As is typical, after the SIM cards are manufactured, i.e. after the processor, memory and wire lines connections assembly, they are personalized (programmed) with a production machine. The production machine comprises a conveyer belt where SIM cards are placed for receiving personalization data from a head of the production machine, which is moved to contact the cards and to transfer data, for example, loading an operating system (OS), a common file system, and/or specific data.
FIG. 1 shows a production machine (i.e. a personalization machine 220) for personalizing SIM cards and comprising a conveyor belt 115, a plurality of heads 110 for programming a corresponding plurality of SIM cards loaded on the conveyor belt, and a support for the heads 120. The production machine 100 is controlled by a programmable logic controller (PLC) 210 as shown in FIG. 2, which is connected to a personal computer (PC). More particularly, the PLC 210 loads the SIM card 105 on an entry of the conveyer belt 115 and moves the heads on the SIM cards. An application program installed in the PC 200 may provide a user interface to control the whole personalization process. More particularly, the PC 200 is a slave and the PLC 210 is a master of a communication between PLC and PC. The PLC sends a message to the PC specifying a position of the SIM cards on the conveyor belt. When the application program on the PC receives a message confirming a correct position of the cards on the conveyor belt, it starts the programming. When the programming is terminated the application program on the PC retrieves results from the heads 110 and transmits the results to the PLC 210, which unloads cards form the conveyor belt. In the case where programming for the SIM cards failed, they (a result of failure is returned) are discarded.
For example, with reference to FIG. 1, eight SIM cards are contemporaneously loaded on the conveyer belt 115 of the production machine, for personalization, and eight heads 110 of the production machine are moved to contact the SIM cards. The PLC controlling the production machine transmits a message to the PC, to notify that the heads 115 are ready to start personalization. When the programming of the SIM cards is terminated, the application program retrieves the results of the programming and transmits a message to the PLC 210 to unload the eight SIM cards from the conveyor belt 115. Afterwards, other SIM cards are loaded on the conveyor belt 115 to be programmed.
FIG. 3 is a block diagram representing the personalization procedure. The production machine loads SIM cards on the conveyer belt at stage 300, and the heads 110 are moved down to contact the SIM cards 105 and start programming at stage 310. Programming is ongoing at stage 320 and when it is finished, the application program retrieves results, at stage 330. At last, the SIM cards on the conveyer belt are unloaded, at stage 340.
The application program is thus used to determine whether the programming operation was successful or not for each SIM card. Depending on the results retrieved from the heads of the production machine, the application program transmits such results to the PLC 210 so that the correctly programmed SIM cards unloaded 150 from the conveyor belt may be separately delivered with respect to the incorrectly programmed or not programmed SIM cards. The incorrectly programmed SIM cards are reloaded 140 into the production machine 100. In fact, if the cause of failure is not critical but, for example, caused by a bad contact between the head 110 and the SIM card 105, the SIM card 105 can be reloaded on the conveyor belt to be programmed.
The personalization includes several commands. In particular, an “OpenShort” command, executed to check open-circuit and short-circuits, often fails due to an incorrect contact between the head 110 and the SIM card 105, even though the hardware of the SIM card 105 is not defective and it might be successfully programmed, if correctly positioned. Thus, an incorrect detection causes low yield and time costs for the personalization. Moreover, failures in programming are counted, for example, for measuring a quality of the production machine or plant which may be associated to a percentage of correctly personalized SIM cards. However, in the method described above, the number of failures is affected and increased by errors in contacting SIM cards in a first programming, even if such SIM cards are correctly personalized in a following programming, and thus not discarded. In other words, the failure count is not indicative of a number of SIM cards discarded.